package edu.cibertec.sicsolutions.vfs.domain.votacion;

import net.sf.json.JSONObject;

import org.apache.log4j.Logger;

import edu.cibertec.sicsolutions.exception.DaoException;
import edu.cibertec.sicsolutions.exception.DomainException;
import edu.cibertec.sicsolutions.vfs.dao.votacion.MesaVotacionDao;
import edu.cibertec.sicsolutions.vfs.spring.SpringContext;

import java.io.Serializable;
import java.util.Map;

/**
 * Domain Object of table MESA_VOTACION 
 * @author enrique.vargas
 *
 */
public class MesaVotacion implements Serializable {

	private static final Logger log = Logger.getLogger(MesaVotacion.class);
 
	
	public MesaVotacion(){
	}
	
	public MesaVotacion(Integer codigo){
		this.codigo = codigo;
	}
	
	/**
	 * Column: CODIGO, DataType: int
	 */
	private Integer codigo;
	/**
	 * Column: CODIGO_CONSULADO, DataType: char
	 */
	private String codigoConsulado;
	/**
	 * Column: DESCRIPCION, DataType: varchar
	 */
	private String descripcion;
	/**
	 * Column: CANTIDAD_MAXIMA, DataType: int
	 */
	private Integer cantidadMaxima;
	/**
	 * Column: ESTADO, DataType: float
	 */
	private Float estado;

	private Consulado consulado;
	
	
	public Consulado getConsulado() {
		return consulado;
	}

	public void setConsulado(Consulado consulado) {
		this.consulado = consulado;
	}

	public Integer getCodigo(){
		return codigo;
	}
	public void setCodigo(Integer codigo){
		this.codigo = codigo;
	}
	public String getCodigoConsulado(){
		return codigoConsulado;
	}
	public void setCodigoConsulado(String codigoConsulado){
		this.codigoConsulado = codigoConsulado;
	}
	public String getDescripcion(){
		return descripcion;
	}
	public void setDescripcion(String descripcion){
		this.descripcion = descripcion;
	}
	public Integer getCantidadMaxima(){
		return cantidadMaxima;
	}
	public void setCantidadMaxima(Integer cantidadMaxima){
		this.cantidadMaxima = cantidadMaxima;
	}
	public Float  getEstado(){
		return estado;
	}
	public void setEstado(Float estado){
		this.estado = estado;
	}
   
	/**
	 * This will create a JSON object and output to client. Get the data from
	 * database and display result to GUI
	 * Convert JSONObject
	 * @return
	 * @throws Exception
	 */
	public JSONObject toJSONObject() throws Exception{
		 
		JSONObject json = new JSONObject();
				    json.put("codigo", codigo);
  	    		    json.put("codigoConsulado", codigoConsulado);
  	    		    json.put("descripcion", descripcion);
  	    		    json.put("cantidadMaxima", cantidadMaxima);
  	    		    json.put("estado", estado);
  	      	    
		return json;
	}
}